
Rajinder Singh
Deep Learning Researcher

RoxyBrowser API कॉल के माध्यम से ब्राउज़र कार्यक्षमता प्रदान करता है और Selenium, Puppeteer और Playwright जैसे ऑटोमेशन फ्रेमवर्क के साथ एकीकृत किया जा सकता है। इसका API आपको वास्तविक ब्राउज़र प्रोफाइल खोलने के लिए डिज़ाइन किया गया है और आपके ऑटोमेशन टूलिंग के साथ जुड़ सकता है। API के लिए दस्तावेज़ में निर्दिष्ट दर सीमा 100 कॉल प्रति मिनट प्रति एंडपॉइंट है।
स्रोत: https://faq.roxybrowser.org/en/guide/10-API
CapSolver एक क्रिएट एंड पॉल API फ्लो प्रदान करता है जो आपको पृष्ठ में डालने के लिए CAPTCHA टोकन वापस करता है। CapSolver विभिन्न CAPTCHA प्रकारों के समर्थन के साथ आता है:
ReCaptchaV2TaskProxyLess, gRecaptchaResponse वापस करता हैReCaptchaV3TaskProxyLess, gRecaptchaResponse के साथ स्कोर वापस करता हैAntiTurnstileTaskProxyLess, token वापस करता है डॉक्स देखेंइस गाइड एक व्यावहारिक, फ्रेमवर्क-अनन्य फ्लो दिखाता है: API के माध्यम से Roxy प्रोफाइल खोलें, अपने ऑटोमेशन फ्रेमवर्क को जोड़ें, CapSolver के साथ CAPTCHA हल करें, और टोकन को जारी रखने के लिए पृष्ठ में डालें।
RoxyBrowser बहु-खाता प्रबंधन के लिए एंटी-डिटेक्ट ब्राउज़र है जिसमें API ऑटोमेशन और मल्टी-विंडो सिंक्रनाइज़र जैसी विशेषताएं हैं।
ऑटोमेशन के लिए, API सबसे महत्वपूर्ण टुकड़ा है:
यह Selenium, Puppeteer और Playwright एकीकरण का समर्थन करता है।
अनुरोधों में token हेडर शामिल होना आवश्यक है।
डिफ़ॉल्ट API होस्ट http://127.0.0.1:50000 है (पोर्ट बदलने के लिए रीस्टार्ट करना आवश्यक है)।
CapSolver दो API कॉल के माध्यम से CAPTCHA हल करता है:
createTask कैप्चा पैरामीटर जमा करने के लिएgetTaskResult कैप्चा टोकन तक पहुंचने तक पॉल करने के लिएreCAPTCHA v2 के लिए, CapSolver gRecaptchaResponse वापस करता है।
getTaskResult के लिए प्रति टास्क 120 पॉल की सीमा है और टास्क बनाने के 5 मिनट के भीतर इसे कॉल करना आवश्यक है।
डिफ़ॉल्ट रूप से, होस्ट http://127.0.0.1:50000 है। यदि आप पोर्ट बदलते हैं, तो आपको RoxyBrowser को रीस्टार्ट करना आवश्यक है।
/browser/workspace का उपयोग कार्यस्थल प्राप्त करने के लिए करें, फिर /browser/list_v3 का उपयोग प्रोफाइल सूची प्राप्त करने के लिए करें।
import requests
BASE = "http://127.0.0.1:50000"
HEADERS = {"token": "YOUR_ROXY_API_KEY"}
workspaces = requests.get(f"{BASE}/browser/workspace", headers=HEADERS).json()
workspace_id = workspaces["data"]["rows"][0]["id"]
profiles = requests.get(
f"{BASE}/browser/list_v3",
params={"workspaceId": workspace_id},
headers=HEADERS
).json()
dir_id = profiles["data"]["rows"][0]["dirId"]
/browser/open कॉल करें। उत्तर में शामिल होता है:
ws: ऑटोमेशन टूल्स के लिए WebSocket इंटरफ़ेसhttp: ऑटोमेशन टूल्स के लिए HTTP इंटरफ़ेसdriver: Selenium एकीकरण के लिए WebDriver पथहेडलेस मोड समर्थित नहीं है।
open_resp = requests.post(
f"{BASE}/browser/open",
json={"workspaceId": workspace_id, "dirId": dir_id, "args": []},
headers=HEADERS
).json()
ws_endpoint = open_resp["data"]["ws"]
http_endpoint = open_resp["data"]["http"]
driver_path = open_resp["data"]["driver"]
रिटर्न किए गए एंडपॉइंट का उपयोग अपने फ्रेमवर्क को जोड़ने के लिए करें:
सटीक जुड़ने के चरण आपके फ्रेमवर्क पर निर्भर करते हैं, लेकिन ws, http और driver मान ऑटोमेशन टूल्स के लिए स्पष्ट रूप से प्रदान किए गए हैं।
import time
import requests
CAPSOLVER_API_KEY = "YOUR_CAPSOLVER_API_KEY"
CAPSOLVER_BASE = "https://api.capsolver.com"
def create_task(task):
payload = {"clientKey": CAPSOLVER_API_KEY, "task": task}
r = requests.post(f"{CAPSOLVER_BASE}/createTask", json=payload)
data = r.json()
if data.get("errorId", 0) != 0:
raise RuntimeError(data.get("errorDescription", "CapSolver त्रुटि"))
return data["taskId"]
def get_task_result(task_id, delay=2):
while True:
time.sleep(delay)
r = requests.post(
f"{CAPSOLVER_BASE}/getTaskResult",
json={"clientKey": CAPSOLVER_API_KEY, "taskId": task_id}
)
data = r.json()
if data.get("status") == "ready":
return data["solution"]
if data.get("status") == "failed":
raise RuntimeError(data.get("errorDescription", "टास्क विफल"))
def solve_recaptcha_v2(website_url, website_key):
task = {
"type": "ReCaptchaV2TaskProxyLess",
"websiteURL": website_url,
"websiteKey": website_key
}
task_id = create_task(task)
solution = get_task_result(task_id)
return solution.get("gRecaptchaResponse", "")
def solve_recaptcha_v3(website_url, website_key, page_action="verify"):
task = {
"type": "ReCaptchaV3TaskProxyLess",
"websiteURL": website_url,
"websiteKey": website_key,
"pageAction": page_action
}
task_id = create_task(task)
solution = get_task_result(task_id)
return solution.get("gRecaptchaResponse", "")
def solve_turnstile(website_url, website_key, action=None, cdata=None):
task = {
"type": "AntiTurnstileTaskProxyLess",
"websiteURL": website_url,
"websiteKey": website_key
}
# यदि प्रदान किया गया हो तो वैकल्पिक मेटाडेटा जोड़ें
if action or cdata:
task["metadata"] = {}
if action:
task["metadata"]["action"] = action
if cdata:
task["metadata"]["cdata"] = cdata
task_id = create_task(task)
solution = get_task_result(task_id)
return solution.get("token", "")
संदर्भ के लिए:
/browser/open के माध्यम से Roxy प्रोफाइल खोलें और अपने ऑटोमेशन फ्रेमवर्क को जोड़ें।
लक्ष्य पृष्ठ पर जाएं और साइट कुंजी निकालें।
उदाहरण:
const siteKey = document.querySelector(".g-recaptcha")?.getAttribute("data-sitekey");
ऊपर दिए गए हेल्पर के साथ CapSolver के साथ हल करें।
टोकन डालें और फॉर्म जमा करें:
const token = "CAPSOLVER_TOKEN";
const el = document.getElementById("g-recaptcha-response");
el.style.display = "block";
el.value = token;
el.dispatchEvent(new Event("input", { bubbles: true }));
el.dispatchEvent(new Event("change", { bubbles: true }));
reCAPTCHA v3 अलग काम करता है - यह पृष्ठ के पीछे चलता है और उपयोगकर्ता अंतर के बजाय एक स्कोर (0.0 से 1.0 तक) वापस करता है।
पृष्ठ से साइट कुंजी और कार्य निकालें:
// साइट कुंजी आमतौर पर एक स्क्रिप्ट या मेटा टैग में होती है
const siteKey = document.querySelector('[data-sitekey]')?.getAttribute('data-sitekey');
// कार्य पृष्ठ स्रोत में: grecaptcha.execute('KEY', {action: 'ACTION'}) में पाया जा सकता है
const pageAction = "submit"; // या "login", "register" आदि
CapSolver के साथ हल करें:
token = solve_recaptcha_v3(
website_url="https://example.com/login",
website_key="6LcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxAA",
page_action="login"
)
टोकन डालें (v2 के समान):
const token = "CAPSOLVER_TOKEN";
document.getElementById("g-recaptcha-response").value = token;
// यदि कॉलबैक मौजूद है, तो इसे ट्रिगर करें
if (typeof ___grecaptcha_cfg !== 'undefined') {
const clients = ___grecaptcha_cfg.clients;
Object.keys(clients).forEach(key => {
if (clients[key].callback) {
clients[key].callback(token);
}
});
}
Cloudflare Turnstile एक आधुनिक CAPTCHA विकल्प है जो हल करने में तेज है (1-20 सेकंड)।
Turnstile साइट कुंजी निकालें:
const siteKey = document.querySelector('.cf-turnstile')?.getAttribute('data-sitekey');
// वैकल्पिक: यदि उपलब्ध हो तो कार्य और cdata निकालें
const action = document.querySelector('.cf-turnstile')?.getAttribute('data-action');
const cdata = document.querySelector('.cf-turnstile')?.getAttribute('data-cdata');
CapSolver के साथ हल करें:
token = solve_turnstile(
website_url="https://example.com",
website_key="0x4AAAAAAAxxxxxxxxxxxxxxx",
action=action, # वैकल्पिक
cdata=cdata # वैकल्पिक
)
Turnstile टोकन डालें:
const token = "CAPSOLVER_TURNSTILE_TOKEN";
// Turnstile उत्तर इनपुट खोजें
const input = document.querySelector('input[name="cf-turnstile-response"]');
if (input) {
input.value = token;
input.dispatchEvent(new Event('input', { bubbles: true }));
input.dispatchEvent(new Event('change', { bubbles: true });
}
// वैकल्पिक: कुछ साइट अलग इनपुट नाम का उपयोग करते हैं
const altInput = document.querySelector('input[name="turnstile-response"]');
if (altInput) {
altInput.value = token;
}
getTaskResult के 120 पॉल की सीमा है जिसे 5 मिनट के भीतर कॉल करना आवश्यक है।शुरू करने के लिए तैयार हैं? CapSolver के लिए पंजीकरण करें और पहले भुगतान पर 6% के अतिरिक्त बोनस कोड ROXYBROWSER का उपयोग करें!

क्या RoxyBrowser Selenium, Puppeteer और Playwright का समर्थन करता है?
हां। API को इन फ्रेमवर्क के साथ एकीकरण के लिए डिज़ाइन किया गया है।
मुझे API टोकन और होस्ट कहां से मिलेगा?
RoxyBrowser में API -> API कॉन्फिगरेशन से। डिफ़ॉल्ट होस्ट http://127.0.0.1:50000 है।
/browser/open क्या लौटाता है? इसे ऑटोमेशन टूल्स के लिए उपयोग किए जाने वाले ws, httpऔरdriver` फील्ड लौटाता है।
हेडलेस समर्थित है?
नहीं, हेडलेस मोड समर्थित नहीं है।
CapSolver कौन-कौन से CAPTCHA प्रकारों का समर्थन करता है?
reCAPTCHA v2 टोकन कैसे वापस करता है?
ReCaptchaV2TaskProxyLess के साथ टास्क बनाएं और gRecaptchaResponseके लिएgetTaskResult` पॉल करें।
reCAPTCHA v3 क्या v2 से अलग है?
reCAPTCHA v3 उपयोगकर्ता अंतर के बिना पृष्ठ के पीछे चलता है और स्कोर (0.0-1.0) वापस करता है। इसे पृष्ठ स्रोत में grecaptcha.execute के लिए खोजें।
मैं Cloudflare Turnstile कैसे हल करूं?
websiteURL और websiteKey के साथ AntiTurnstileTaskProxyLess टास्क प्रकार का उपयोग करें। विकल्प के रूप में यदि विकल्प उपलब्ध हैं, तो metadata.actionऔरmetadata.cdata` शामिल करें। Turnstile के हल करने में 1-20 सेकंड लगते हैं।
आगे के अध्ययन:
Turnstile साइट कुंजी कैसे पाएं?
.cf-turnstile तत्व पर data-sitekey लें। Turnstile साइट कुंजी 0x4 से शुरू होती है।
क्या मुझे CapSolver के लिए प्रॉक्सी की आवश्यकता है?
नहीं, `*ProxyLess टास्क प्रकार उपयोगकर्ता के साथ अपने प्रॉक्सी का उपयोग करने के लिए अपने प्रॉक्सी का उपयोग करें।
RoxyBrowser आपको ऑटोमेशन एंडपॉइंट के साथ प्रोफाइल-आधारित ब्राउज़र वातावरण प्रदान करता है, और CapSolver प्रोग्रामेटिक CAPTCHA टोकन प्रदान करता है। टोकन को डालकर अपने फ्रेमवर्क को जोड़ें और CapSolver टोकन को जारी रखें, आप भरी हुई ऑटोमेशन फ्लो बना सकते हैं।
Rust में वेब स्क्रैपिंग के स्केलेबल आर्किटेक्चर सीखें, reqwest, scraper, असिंक्रोनस स्क्रैपिंग, हेडलेस ब्राउज़र स्क्रैपिंग, प्रॉक्सी रोटेशन, और संगत CAPTCHA का निपटारा।

ईज़ीस्पाइडर एक दृश्य, नो-कोड वेब स्क्रैपिंग और ब्राउज़र ऑटोमेशन टूल है, जबकि कैपसॉल्वर के साथ जुड़ा हुआ है, तो यह reCAPTCHA v2 और Cloudflare Turnstile जैसे CAPTCHA को विश्वसनीय रूप से हल कर सकता है, जो वेबसाइटों पर सुचारू रूप से स्वचालित डेटा निकालने की अनुमति देता है।
